การเรียงลำดับ 2
การเรียงลำดับ แอเรย์เนี่ยเป็นอะไรที่ยุ่งยากมาก เนื่องจากแอเรย์ของ PHP มีหลายรูปแบบ โค้ดนี่ก็เป็นอีกรูปแบบหนึ่งของการเรียงลำดับ
การเรียงลำดับตามค่าของแอเรย์ ดูจากตัวอย่างเลยครับ
ตัวอย่าง
<?
$array[two]=2;
$array[three]=3;
$array[one]=1;
$array[four]=4;
$new_array=value_sort($array);
print_r($new_array); //Array ( [one] => 1 [two] => 2 [three] => 3 [four] => 4 )
?>
การเรียงลำดับตามค่าของแอเรย์ ดูจากตัวอย่างเลยครับ
<?
function value_sort($array, $type='asc') {
$result=array();
foreach($array as $var => $val) {
$set=false;
foreach($result as $var2 => $val2){
if($set==false) {
if($val>$val2 && $type=='desc' || $val<$val2 && $type=='asc') {
$temp=array();
foreach($result as $var3 => $val3){
if($var3==$var2) $set=true;
if($set) {
$temp[$var3]=$val3;
unset($result[$var3]);
}
}
$result[$var]=$val;
foreach($temp as $var3 => $val3) {
$result[$var3]=$val3;
}
}
}
}
if(!$set) $result[$var]=$val;
}
return $result;
}
?>
ตัวอย่าง
<?
$array[two]=2;
$array[three]=3;
$array[one]=1;
$array[four]=4;
$new_array=value_sort($array);
print_r($new_array); //Array ( [one] => 1 [two] => 2 [three] => 3 [four] => 4 )
?>